<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>数组去重</title>
</head>

<body>
    <script>
        var arr = [1, 2, 3, 2, 3, 1, 4, 2, 5, 6, 4, 7, 8, 3, 5, 6, 7, 9, 2, 1];


        //先排序 
        //判断前后两个是否一样 一样就删除一个
        // arr.sort(function(a,b){if(a>b){ return 1} return -1})
        // // alert(arr)
        // for(var i=0;i<arr.length;i++){
        //     if(arr[i] == arr[i+1]){
        //         arr.splice(i,1);
        //         i--;
        //     }

        // }
        // alert(arr)
        //  1 2 3 4 5 6

        // 遍历  查看后边是否有一样的 
        // for(var i=0;i<arr.length;i++){
        //     // 从当前位置 往后 查找
        //     // i
        //     // i+1
        //     var index = arr.indexOf(arr[i],i+1);
        //     if(index != -1){
        //         arr.splice(index,1)
        //         i--;
        //     }
        // }
        // alert(arr)


        //无序集合数据结构
        // 这个数据结构 本身就要求 每个数据都是唯一的 

        // 数组->无序集合-> 数组

        // var test = new Set(arr);
        // document.write(test) // [object set] 这是一个集合类型

        // 转回数组 
        // var res = Array.from(test)
        // document.write(res)
        // document.write(arr) // 原数组不变

        // document.write([...test])

        // 创建集合  new Set() 
        // 数组转集合 new Set(数组)
        // 集合转数组  Array.from(集合)
        // 集合转数组 [...集合] 三个.不能少

        function unique_arr(arr) {
            var res = [];
            for (var i = 0; i < arr.length; i++) {
                if (res.indexOf(arr[i]) == -1) {
                    res.push(arr[i])
                }
            }
            return res;
        }


        alert(unique_arr(arr))
    </script>
</body>

</html>